#ifndef _OCPP_NcDimWrapper_H__
#define _OCPP_NcDimWrapper_H__

#include "NcUtil.h"

namespace OCPP
{
	class NcDimWrapper
	{
	public:
		NcDimWrapper(String name);
		NcDimWrapper(String name,FloatVector fv);
		virtual ~NcDimWrapper() {}
		virtual const size_t size();
		virtual int getInt(size_t i);
		virtual float getFloat(size_t i);
		virtual String getString(size_t i);
		
		FloatVector& getFloatVec() {
			return _fv;
		}

		String uinit;
		bool reverse = false;
		void setName(String value){ _name = value; }
		String getName() { return _name; }
	protected:
		String _name;
		FloatVector _fv;
	};

	using NcDimWrapperList = std::vector<std::shared_ptr<NcDimWrapper> >;
}


#endif // !_OCPP_NcTime_H__
